/*
 * To change this template, choose Tools | Templates
 * and open the template in the editor.
 */

package es.upsam.modelo;

import es.upsam.modelo.dao.persistencia;
import java.sql.SQLException;
import java.sql.ResultSet;
import java.util.logging.Level;
import java.util.logging.Logger;

/**
 *
 * @author carmas
 */
public class Usuario {

    int id;
    String nombre;
    String password;
    int tipo;

    public int getId() {
        return id;
    }

    public void setId(int id) {
        this.id = id;
    }

    public String getNombre() {
        return nombre;
    }

    public void setNombre(String nombre) {
        this.nombre = nombre;
    }

    public String getPassword() {
        return password;
    }

    public void setPassword(String password) {
        this.password = password;
    }


    public int getTipo() {
        return tipo;
    }

    public void setTipo(int tipo) {
        this.tipo = tipo;
    }

    public boolean isEmpty(){
        if (this.nombre==null) return true;
        else return false;
    };

    public int persistir(){
        int i;

        persistencia p = new persistencia();
            
        String query = "INSERT INTO APP.USUARIOS (ID_USUARIO,NOMBRE,TIPO,PASSWORD) values";
               query+=" ((SELECT max(ID_USUARIO)+1 FROM APP.USUARIOS),'"+ this.nombre;
               query+="',"+ this.tipo +",'"+ this.password +"')";

        i = p.ejecutarActualizacion(query);
        p.Cerrar();

        return i;
    }



    public void consultarPorNombreYPassword(String nombre, String password){
        try {
            String query = "select nombre,id_usuario, tipo, password from app.usuarios where NOMBRE='"+nombre+"' and PASSWORD='"+password+"'";
            persistencia p = new persistencia();
            ResultSet rs = p.ejecutarConsulta(query);
            while (rs.next()) {
                this.nombre = rs.getString("NOMBRE");
                this.id = rs.getInt("ID_USUARIO");
                this.tipo = rs.getInt("TIPO");
                this.password = rs.getString("PASSWORD");;
            }
            rs.close();
            p.Cerrar();
        } catch (SQLException ex) {
            Logger.getLogger(Usuario.class.getName()).log(Level.SEVERE, null, ex);
        }
    }

    public void consultarPorId(int id){
        try {
            String query = "select nombre,id_usuario, tipo, password from app.usuarios where id_usuario = "+id;
            persistencia p = new persistencia();
            ResultSet rs = p.ejecutarConsulta(query);
            while (rs.next()) {
                this.nombre = rs.getString("NOMBRE");
                this.id = rs.getInt("ID_USUARIO");
                this.tipo = rs.getInt("TIPO");
                this.password = rs.getString("PASSWORD");;
            }
            rs.close();
            p.Cerrar();
        } catch (SQLException ex) {
            Logger.getLogger(Usuario.class.getName()).log(Level.SEVERE, null, ex);
        }
    }
}